home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 7 / BBS in a Box - Macintosh - Volume VII (BBS in a Box) (January 1993).iso / Files / Hyper / Q-R / Recognize.94.cpt / Recognize .94 / card_8319.txt < prev    next >
Text File  |  1988-11-13  |  5KB  |  184 lines

  1. -- card: 8319 from stack: in.94
  2. -- bmap block id: 0
  3. -- flags: 0000
  4. -- background id: 2792
  5. -- name: broadcast
  6. ----- HyperTalk script -----
  7. on opencard
  8.   global exitcmd
  9.   put "" into exitcmd
  10.   sendsport  b
  11.   put empty into bkgnd field infield
  12. end opencard
  13.  
  14.  
  15.  
  16. on docardsearch
  17.   if bkgnd field infield is empty then exit docardsearch
  18.   if charsavailable() <> 0 then idle
  19.  
  20.   if bkgnd field infield contains "Node List" then theyell
  21. end docardsearch
  22.  
  23.  
  24. on dobulletin
  25.   global username
  26.   put empty into node3
  27.   put empty into node4
  28.   put empty into node5
  29.   repeat until line 1 of bkgnd field infield contains "Node list"
  30.     delete line 1 of bkgnd field infield
  31.   end repeat
  32.  
  33.   get the number of lines of bkgnd field "Infield"
  34.   if it is 6 then put 3 into torepeat
  35.   if it is 7 then put 4 into torepeat
  36.   if it is 8 then put 5 into torepeat
  37.   repeat with i= 3 to torepeat
  38.     put "node"&i into thenode
  39.     put "put line "&i&" of bkgnd field infield into "&thenode into todo
  40.     do todo
  41.   end repeat
  42.   repeat 7
  43.     delete char 1 of node3
  44.   end repeat
  45.   repeat 7
  46.     delete char 1 of node4
  47.   end repeat
  48.   repeat 7
  49.     delete char 1 of node5
  50.   end repeat
  51.  
  52.   if node3 contains username then put "All" into node3
  53.   if node4 contains username then put "All" into node4
  54.   if node4 is "All" then
  55.     answer "Who do you want to send it to?" with node3 or node5 or node4
  56.   else
  57.     answer "Who do you want to send it to?" with node5 or node4 or node3
  58.   end if
  59.   put it into theanswer
  60.   if theanswer contains "3" then put 1 into whichone
  61.   if theanswer contains "4" then put 2 into whichone
  62.   if theanswer contains "5" then put 3 into whichone
  63.   if theanswer contains "All" then put A into whichone
  64.   ask "Message to send:"
  65.   put it into themessage
  66.   if themessage is empty then
  67.     sendsport  return
  68.     go to card mainmenu
  69.     exit dobulletin
  70.   end if
  71.  
  72.   sendsport  whichone
  73.   sendsport themessage
  74.   sendsport  return
  75.   pop card
  76. end dobulletin
  77.  
  78. on theyell
  79.   global theusername,node1,node2,node3
  80.   getlines
  81.   if item 2 of node1 contains theusername then put "All" into item 2 of node1
  82.   if item 2 of node2 contains theusername then put "All" into item 2 of node2
  83.   if item 2 of node3 contains theusername then put "All" into item 2 of node3
  84.  
  85.   put item 1 of node1&","& item 1 of node2&","&item 1 of node3 into themenu
  86.   ShowDialog 4,4745,"Broadcast:","","Your Broadcast",theMenu,1
  87.   if the result is empty then
  88.     put "Empty" into theresult
  89.   else
  90.     put the result into theresult
  91.     handlebulletin theresult
  92.   end if
  93. end theyell
  94.  
  95. on handlebulletin what
  96.   global node1,node2,node3
  97.   put what
  98.   put item 1 of what into thenode
  99.   put item 2 of what into themessage
  100.   put "Node"&thenode into temp
  101.   put "put char 1 of "&temp&" into whichone" into todo
  102.   do todo
  103.   if themessage is empty then
  104.     sendsport  return
  105.     go to card mainmenu
  106.     exit handlebulletin
  107.   end if
  108.  
  109.   sendsport  whichone
  110.   sendsport themessage
  111.   sendsport  return
  112.   pop card
  113.  
  114. end handlebulletin
  115.  
  116.  
  117. on getlines
  118.   global node1,node2,node3
  119.   put empty into node3
  120.   put empty into node4
  121.   put empty into node5
  122.   repeat until line 1 of bkgnd field infield contains "Node list"
  123.     delete line 1 of bkgnd field infield
  124.   end repeat
  125.  
  126.   get the number of lines of bkgnd field "Infield"
  127.   if it is 6 then put 3 into torepeat
  128.   if it is 7 then put 4 into torepeat
  129.   if it is 8 then put 5 into torepeat
  130.   repeat with i= 3 to torepeat
  131.     put "node"&i into thenode
  132.     put "put line "&i&" of bkgnd field infield into "&thenode into todo
  133.     do todo
  134.   end repeat
  135.   put word 2 of node3 into number3
  136.   put word 2 of node4 into number4
  137.   put word 2 of node5 into number5
  138.   repeat 7
  139.     delete char 1 of node3
  140.   end repeat
  141.   repeat 7
  142.     delete char 1 of node4
  143.   end repeat
  144.   repeat 7
  145.     delete char 1 of node5
  146.   end repeat
  147.   put number3 into item 1 of node1
  148.   put number4 into item 1 of node2
  149.   put number5 into item 1 of node3
  150.   put node3 into item 2 of node1
  151.   put node4 into item 2 of node2
  152.   put node5 into item 2 of node3
  153. end getlines
  154.  
  155.  
  156.  
  157.  
  158.  
  159. -- part 2 (field)
  160. -- low flags: 81
  161. -- high flags: 0007
  162. -- rect: left=14 top=40 right=257 bottom=491
  163. -- title width / last selected line: 0
  164. -- icon id / first selected line: 0 / 0
  165. -- text alignment: 0
  166. -- font id: 3
  167. -- text size: 10
  168. -- style flags: 256
  169. -- line height: 13
  170. -- part name: Bulletins
  171.  
  172.  
  173. -- part contents for background part 1
  174. ----- text -----
  175. Broadcast a message
  176.  
  177. -- part contents for background part 3
  178. ----- text -----
  179. Node list
  180. ---------
  181. Node 1:CW NORMAN
  182.  
  183. Type 'A' for all nodes.
  184. Which node(RETURN to abort)>